public E remove(int index){ E ret = data[index]; for(int i = index + 1 ; i < size ; i ++) data[i - 1] = data[i]; size --; data[size] = null; // loitering objects != memory leak
// 获取index索引位置的元素 public E get(int index){ if(index < 0 || index >= size) thrownew IllegalArgumentException("Get failed. Index is illegal."); return data[index]; }
public E getLast(){ return get(size - 1); }
public E getFirst(){ return get(0); }
// 修改index索引位置的元素为e publicvoidset(int index, E e){ if(index < 0 || index >= size) thrownew IllegalArgumentException("Set failed. Index is illegal."); data[index] = e; }
// 查找数组中是否有元素e publicbooleancontains(E e){ for(int i = 0 ; i < size ; i ++){ if(data[i].equals(e)) returntrue; } returnfalse; }
// 查找数组中元素e所在的索引,如果不存在元素e,则返回-1 publicintfind(E e){ for(int i = 0 ; i < size ; i ++){ if(data[i].equals(e)) return i; } return -1; }
public E remove(int index){ if(index < 0 || index >= size) thrownew IllegalArgumentException("Remove failed. Index is illegal.");
E ret = data[index]; for(int i = index + 1 ; i < size ; i ++) data[i - 1] = data[i]; size --; data[size] = null; // loitering objects != memory leak